Skip to main content

Face Recognition

Description

Face recognition is a tool that allows the user to recognise faces in images. It is useful for security applications where the user wants to identify a person in an image.

Settings

Known Faces Images and Names (Local)

The images and names of the faces that the user want to recognise.

info

Zene UI

The user can upload (drag and drop) the images directly to UI. To add the name of the person in the image, the user can type the name of the person under the image.

Known Faces Directory (Server)

The directory containing the images and names of the faces that the user want to recognise. The directory should contain images of the faces that the user want to recognise, and the images file name should be the name of the person in the image. For example, if the user want to recognise the face of John Doe, the user should have an image of John Doe in the directory, and the image file name should be for example John Doe.jpg.

info

If the Known Faces Images and Names (Local) setting is set, the Known Faces Directory (Server) setting will be ignored and vice versa.

Detection Model

The detection model is the type of model that will be used to detect the faces in the images.

Supported Models/ Methods

Here are the supported methods:

  • YuNet

    • A lightweight face detection model that is designed for edge devices.
    • Slow inference speed, but high accuracy.
  • OpenCV - TensorFlow

    • A face detection model that is based on the TensorFlow framework.
    • Slow inference speed, but high accuracy.
  • LBP Cascade

    • A face detection model that is based on the Local Binary Pattern (LBP) algorithm.
    • Fast inference speed, but low accuracy.
  • HAAR Cascade

    • Fast inference speed, but low accuracy.

NMS Threshold

YuNET OpenCV - TensorFlow

The NMS threshold is the minimum threshold for non-maximum suppression. Non-maximum suppression is a technique used to reduce the number of bounding boxes by removing the ones that overlap too much with other bounding boxes. A lower NMS threshold will result in fewer bounding boxes, but with potentially higher accuracy, whereas a higher threshold will result in more bounding boxes, but with lower accuracy.

Confidence Threshold

YuNET OpenCV - TensorFlow

The confidence threshold is the minimum confidence score a face detection should have to be considered valid. Face detections with confidence scores below this threshold will be discarded. A higher confidence threshold will result in fewer face detections, but with higher accuracy, whereas a lower threshold will result in more face detections, but with potentially lower accuracy.

Top K Value

YuNET

The top K value is the maximum number of face detections that will be returned, before NMS. A higher top K value will result in more face detections, but with potentially lower accuracy, whereas a lower top K value will result in fewer face detections, but with higher accuracy.

Cosine Similarity Threshold

A measure of the similarity between two vectors, used in facial recognition to compare two sets of facial features and determine their similarity by calculating the cosine of the angle between the two feature vectors.

A higher cosine similarity threshold will result in fewer face recognitions, but with higher accuracy, whereas a lower threshold will result in more face recognitions, but with potentially lower accuracy.

L2 Normalisation Similarity Threshold

A measure of similarity between facial features in facial recognition, calculated as the square root of the sum of the squared differences between the corresponding elements of the two feature vectors.

A higher L2 normalisation similarity threshold will result in fewer face recognitions, but with higher accuracy, whereas a lower threshold will result in more face recognitions, but with potentially lower accuracy.

Display Results

Overlay Results

Whether to draw the results on top of the image frame.

Draw Facial Landmarks

Whether to draw the facial landmarks on top of the image output frame.